package tv.huan.media.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import tv.huan.common.annotation.Excel;
import tv.huan.common.annotation.Excel.Type;
import tv.huan.common.core.domain.BaseEntity;


/**
 * 专辑对象 album
 * 
 * @author admin
 * @date 2019-10-08
 */
public class Album extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @Excel(name = "专辑ID",type = Type.EXPORT)
    private Long albumId;

    /** 专辑cid */
    @Excel(name = "cid")
    private String cid;

    /** 专辑名称 */
    @Excel(name = "专辑名称",prompt = "必填,不可重复")
    private String title;

    /** 简介 */
    @Excel(name = "简介")
    private String description;

    /** 导演 */
    @Excel(name = "导演")
    private String director;

    /** 主演 */
    @Excel(name = "主演")
    private String leadingActor;

    /** 分类id */
    @Excel(name = "分类id", type = Type.IMPORT,prompt = "必填，系统中的分类ID")
    private Long classId;

    /** 类型 */
    @Excel(name = "类型")
    private String type;

    /** 语言 */
    @Excel(name = "语言")
    private String langue;

    /** 地区 */
    @Excel(name = "地区")
    private String areaName;

    /** 评分 */
    @Excel(name = "评分")
    private String score;

    /** 总集数 */
    @Excel(name = "总集数",prompt = "必填")
    private String episodeAll;

    /** 年龄段 */
    @Excel(name = "年龄段")
    private String ageGroup;

    /** 单集时长 */
    @Excel(name = "单集时长")
    private Long times;

    /** 总时长-分钟 */
    @Excel(name = "总时长-分钟")
    private Long allTimesMin;

    /** 总时长-小时 */
    @Excel(name = "总时长-小时")
    private Long allTimesHour;

    /** 分辨率 */
    @Excel(name = "分辨率")
    private String resolution;

    /** 上映日期 */
    @Excel(name = "上映日期",dateFormat = "yyyy-MM-dd")
    private String publishDate;

    /** 标签1=独播；2=自制；3=vip；4=腾讯视频 ; -1=未知 */
    @Excel(name = "标签",combo = {"独播","自制","vip","腾讯视频"},readConverterExp = "1=独播,2=自制,3=vip,4=腾讯视频,-1=未知")
    private String tag;

    /** 发行许可证 */
    @Excel(name = "发行许可证")
    private String issueLicense;

    /** 制作许可证 */
    @Excel(name = "制作许可证")
    private String makeLicense;

    /** 制作单位 */
    @Excel(name = "制作单位")
    private String productionCompany;

    /** 1=院线; 2= 网大; -1=未知 */
    @Excel(name = "院线/网大",combo = {"院线","网大"},readConverterExp = "1=院线,2=网大,-1=未知")
    private String theatreInternet;

    /** 播出平台 */
    @Excel(name = "播出平台")
    private String playPlatform;

    /** 分类 */
    @Excel(name = "分类", type = Type.EXPORT)
    private String className;

    /** 授权方id */
    @Excel(name = "授权方id", type = Type.IMPORT,prompt = "必填，系统中的授权方ID")
    private Long authorizerId;

    /** 授权方 */
    @Excel(name = "授权方", type = Type.EXPORT)
    private String authorizerName;

    /** 授权开始时间 */
    @Excel(name = "授权开始时间",prompt = "必填",dateFormat = "yyyy-MM-dd")
    private String authorBeginDate;

    /** 授权截止时间 */
    @Excel(name = "授权截止时间",prompt = "必填",dateFormat = "yyyy-MM-dd")
    private String authorEndDate;

    /** ott版权 1：有, 0：没有, -1：未知 */
    @Excel(name = "ott版权",combo = {"有","没有"},readConverterExp = "1=有,0=没有,-1=未知")
    private String isOttCopyright;

    /** iptv版权 1：有, 0：没有， -1：未知 */
    @Excel(name = "iptv版权",combo = {"有","没有"},readConverterExp = "1=有,0=没有,-1=未知")
    private String isIptvCopyright;

    /** 版权类型 1：独播， 0：非独播， -1：未知 */
    @Excel(name = "版权类型",combo = {"独播","非独播"},readConverterExp = "1=独播,0=非独播,-1=未知")
    private String copyrightType;

    /** 内容等级 S+, S, S-, A+, A, B, C，-1（未知） */
    @Excel(name = "内容等级",combo = {"S+","S","S-","A+","A","B","C"})
    private String contentLevel;

    /** 是否可提供 1：可提供，0：不可提供， 2：着重可提供 -1：未知 */
    @Excel(name = "是否可提供",combo = {"可提供","不可提供","着重可提供"},readConverterExp = "1=可提供,0=不可提供,2=着重可提供,-1=未知")
    private String isProvide;

    /** 上线状态 1：已上线， 0：未上线， -1：已下线 */
    @Excel(name = "上线状态",type = Type.EXPORT,readConverterExp = "1=已上线,2=未上线,-1=已下线")
    private Integer onlineState;

    /** 版权参考 */
    @Excel(name = "版权参考")
    private String copyrightRefer;

    /** 版权信息 */
    @Excel(name = "版权信息")
    private String copyrightInfo;

    /** 移动盘路径 */
    @Excel(name = "移动盘路径")
    private String mobileDisk;

    /** 服务器路径 */
    @Excel(name = "服务器路径")
    private String serverDisk;

    /** 引入商务 */
    @Excel(name = "引入商务")
    private String businessLeader;

    /** 采购类型 */
    @Excel(name = "采购类型",combo = {"采购","按月结算"},readConverterExp = "1=采购,2=按月结算")
    private String purchaseType;

    public String getPurchaseType() {
        return purchaseType;
    }

    public void setPurchaseType(String purchaseType) {
        this.purchaseType = purchaseType;
    }

    public String getBusinessLeader() {
        return businessLeader;
    }

    public void setBusinessLeader(String businessLeader) {
        this.businessLeader = businessLeader;
    }

    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }

    public String getAuthorizerName() {
        return authorizerName;
    }

    public void setAuthorizerName(String authorizerName) {
        this.authorizerName = authorizerName;
    }

    public void setAlbumId(Long albumId)
    {
        this.albumId = albumId;
    }

    public Long getAlbumId() 
    {
        return albumId;
    }
    public void setCid(String cid) 
    {
        this.cid = cid;
    }

    public String getCid() 
    {
        return cid;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }
    public void setDirector(String director) 
    {
        this.director = director;
    }

    public String getDirector() 
    {
        return director;
    }
    public void setLeadingActor(String leadingActor) 
    {
        this.leadingActor = leadingActor;
    }

    public String getLeadingActor() 
    {
        return leadingActor;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setLangue(String langue) 
    {
        this.langue = langue;
    }

    public String getLangue() 
    {
        return langue;
    }
    public void setAreaName(String areaName) 
    {
        this.areaName = areaName;
    }

    public String getAreaName() 
    {
        return areaName;
    }
    public void setScore(String score) 
    {
        this.score = score;
    }

    public String getScore() 
    {
        return score;
    }
    public void setEpisodeAll(String episodeAll) 
    {
        this.episodeAll = episodeAll;
    }

    public String getEpisodeAll() 
    {
        return episodeAll;
    }
    public void setAgeGroup(String ageGroup) 
    {
        this.ageGroup = ageGroup;
    }

    public String getAgeGroup() 
    {
        return ageGroup;
    }
    public void setTimes(Long times) 
    {
        this.times = times;
    }

    public Long getTimes() 
    {
        return times;
    }
    public void setAllTimesMin(Long allTimesMin) 
    {
        this.allTimesMin = allTimesMin;
    }

    public Long getAllTimesMin() 
    {
        return allTimesMin;
    }
    public void setAllTimesHour(Long allTimesHour) 
    {
        this.allTimesHour = allTimesHour;
    }

    public Long getAllTimesHour() 
    {
        return allTimesHour;
    }
    public void setResolution(String resolution) 
    {
        this.resolution = resolution;
    }

    public String getResolution() 
    {
        return resolution;
    }
    public void setPublishDate(String publishDate) 
    {
        this.publishDate = publishDate;
    }

    public String getPublishDate() 
    {
        return publishDate;
    }
    public void setTag(String tag)
    {
        this.tag = tag;
    }

    public String getTag()
    {
        return tag;
    }
    public void setIssueLicense(String issueLicense) 
    {
        this.issueLicense = issueLicense;
    }

    public String getIssueLicense() 
    {
        return issueLicense;
    }
    public void setMakeLicense(String makeLicense) 
    {
        this.makeLicense = makeLicense;
    }

    public String getMakeLicense() 
    {
        return makeLicense;
    }
    public void setProductionCompany(String productionCompany) 
    {
        this.productionCompany = productionCompany;
    }

    public String getProductionCompany() 
    {
        return productionCompany;
    }
    public void setTheatreInternet(String theatreInternet)
    {
        this.theatreInternet = theatreInternet;
    }

    public String getTheatreInternet()
    {
        return theatreInternet;
    }
    public void setPlayPlatform(String playPlatform) 
    {
        this.playPlatform = playPlatform;
    }

    public String getPlayPlatform() 
    {
        return playPlatform;
    }
    public void setClassId(Long classId) 
    {
        this.classId = classId;
    }

    public Long getClassId() 
    {
        return classId;
    }
    public void setAuthorizerId(Long authorizerId) 
    {
        this.authorizerId = authorizerId;
    }

    public Long getAuthorizerId()
    {
        return authorizerId;
    }
    public void setAuthorBeginDate(String authorBeginDate)
    {
        this.authorBeginDate = authorBeginDate;
    }

    public String getAuthorBeginDate()
    {
        return authorBeginDate;
    }
    public void setAuthorEndDate(String authorEndDate)
    {
        this.authorEndDate = authorEndDate;
    }

    public String getAuthorEndDate()
    {
        return authorEndDate;
    }
    public void setIsOttCopyright(String isOttCopyright)
    {
        this.isOttCopyright = isOttCopyright;
    }

    public String getIsOttCopyright()
    {
        return isOttCopyright;
    }
    public void setIsIptvCopyright(String isIptvCopyright)
    {
        this.isIptvCopyright = isIptvCopyright;
    }

    public String getIsIptvCopyright()
    {
        return isIptvCopyright;
    }
    public void setCopyrightType(String copyrightType)
    {
        this.copyrightType = copyrightType;
    }

    public String getCopyrightType()
    {
        return copyrightType;
    }
    public void setContentLevel(String contentLevel) 
    {
        this.contentLevel = contentLevel;
    }

    public String getContentLevel() 
    {
        return contentLevel;
    }
    public void setIsProvide(String isProvide)
    {
        this.isProvide = isProvide;
    }

    public String getIsProvide()
    {
        return isProvide;
    }
    public void setOnlineState(Integer onlineState) 
    {
        this.onlineState = onlineState;
    }

    public Integer getOnlineState() 
    {
        return onlineState;
    }
    public void setCopyrightRefer(String copyrightRefer) 
    {
        this.copyrightRefer = copyrightRefer;
    }

    public String getCopyrightRefer() 
    {
        return copyrightRefer;
    }
    public void setCopyrightInfo(String copyrightInfo) 
    {
        this.copyrightInfo = copyrightInfo;
    }

    public String getCopyrightInfo() 
    {
        return copyrightInfo;
    }
    public void setMobileDisk(String mobileDisk) 
    {
        this.mobileDisk = mobileDisk;
    }

    public String getMobileDisk() 
    {
        return mobileDisk;
    }
    public void setServerDisk(String serverDisk) 
    {
        this.serverDisk = serverDisk;
    }

    public String getServerDisk() 
    {
        return serverDisk;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("albumId", getAlbumId())
            .append("cid", getCid())
            .append("title", getTitle())
            .append("description", getDescription())
            .append("director", getDirector())
            .append("leadingActor", getLeadingActor())
            .append("type", getType())
            .append("langue", getLangue())
            .append("areaName", getAreaName())
            .append("score", getScore())
            .append("episodeAll", getEpisodeAll())
            .append("ageGroup", getAgeGroup())
            .append("times", getTimes())
            .append("allTimesMin", getAllTimesMin())
            .append("allTimesHour", getAllTimesHour())
            .append("resolution", getResolution())
            .append("publishDate", getPublishDate())
            .append("tag", getTag())
            .append("issueLicense", getIssueLicense())
            .append("makeLicense", getMakeLicense())
            .append("productionCompany", getProductionCompany())
            .append("theatreInternet", getTheatreInternet())
            .append("playPlatform", getPlayPlatform())
            .append("classId", getClassId())
            .append("authorizerId", getAuthorizerId())
            .append("authorBeginDate", getAuthorBeginDate())
            .append("authorEndDate", getAuthorEndDate())
            .append("isOttCopyright", getIsOttCopyright())
            .append("isIptvCopyright", getIsIptvCopyright())
            .append("copyrightType", getCopyrightType())
            .append("contentLevel", getContentLevel())
            .append("isProvide", getIsProvide())
            .append("onlineState", getOnlineState())
            .append("copyrightRefer", getCopyrightRefer())
            .append("copyrightInfo", getCopyrightInfo())
            .append("mobileDisk", getMobileDisk())
            .append("serverDisk", getServerDisk())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
